<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html>
  <head>    
    <title>Convertir PNG a BTI y viceversa</title>    
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
    <link href="../../styles.css" rel="stylesheet">
    <link rel="icon" href="../../images/icon.png">
	</head>
	<body>
		<div id="top">
      <h1>Convertir PNG a BTI y viceversa</h1> 
		</div>
    <div id="main">
      <h2>Contenido</h2>
        <div class="contents">
        <ol>
          <li><a href="#tools">Herramientas</a></li>
          <li><a href="#png-to-bti">PNG a BTI</a></li>
          <li><a href="#bti-to-png">BTI a PNG</a></li>
          <li><a href="#j3dview-bti">BTIs de j3dview</a></li>
        </ol>
      </div>
      <h2 id="tools">Herramientas</h2>
      <div class="contents">
        <ul>
          <li>wimgt (incluido en WST)</li>        
        </ul>
      </div>
      <h2 id="png-to-bti">PNG a BTI</h2>
      <div class="contents">
        <p>Abre una ventana de comandos en el lugar en donde se encuentre el archivo PNG (<b>Fig. 1</b>).</p>
        <img src="../../images/basic2/png-to-bti1.jpg" alt="Image could not be loaded.">
        <p class="idtext">Fig. 1</p>
        <p>Escribe y ejecuta el siguiente comando (<b>Fig. 2</b>):</p>
        <div class="code_block">
          <p>wimgt encode [Archivo PNG] --transform bti.[Formato de imagen] --dest [Archivo de salida]</p>
        </div>
        <p><b>Donde:</b></p>      
        <ul>
          <li><code>encode</code> le dice a wimgt que codifique el archivo de entrada en el archivo espec&iacute;ficado posteriormente (<code>enc</code> puede usarse como sustituto).</li>        
          <li><code>[Archivo PNG]</code> es la direcci&oacute;n del archivo PNG de entrada a convertir.</li>
          <li><code>--transform</code> es usado para indicarle a <b>wimgt</b> que <i>transforme</i> el archivo de entrada en el formato especificado (<code>-x</code> puede usarse como sustituto).</li>
          <li><code>bti.[Formato de imagen]</code> se usa para decirle a wimgt que convierta el archivo de entrada en un archivo BTI en el formato <code>[Formato de imagen]</code> especificado (<b>CMPR</b>, <b>I4</b>, <b>RGB565</b>, etc. son valores legales).</li>        
          <li><code>--dest</code> se usa para especificar el destino del archivo convertido (puede omitirse y  tambi&eacute;n puede ser sustituido por <code>-d</code>). <code>--DEST</code> puede usarse tambi&eacute;n (puede sustituirse por <code>-D</code>) y la diferencia es que con &eacute;l wimgt crear&aacute; el directorio destino automaticamente si es que este directorio no existe originalmente.</li>        
          <li><code>[Archivo de salida]</code> es el destino y nombre del archivo a crear.</li>
        </ul>
        <img src="../../images/basic2/png-to-bti2.jpg" alt="Image could not be loaded.">
        <p class="idtext">Fig. 2</p>
        <p>Despu&eacute;s de ejecutar el comando, un archivo BTI se debi&oacute; haber creado en <code>[Archivo de salida]</code> en el formato  <code>[Image Format]</code> especificado (<b>Fig. 3</b>).</p>
        <img src="../../images/basic2/png-to-bti3.jpg" alt="Image could not be loaded.">
        <p class="idtext">Fig. 3</p>
        <p><b>Notas:</b></p>
        <ul>
          <li>Los archivos BTI son siempre m&aacute;s grandes en tama&ntilde;o en relaci&oacute;n a los archivos PNG de donde fueron creados debido a los mipmaps anexados automaticamente en el proceso.</li>
          <li>Se puede usar <code>wimgt copy [Imagen PNG] [Archivo de salida]</code> para crear un archivo BTI sin especificar <code>[Image Format]</code>. El <code>[Image Format]</code> que se seleccionar&aacute; autom&aacute;ticamente se podr&aacute; ver en el texto que imprime la herramienta en la terminal al ser ejecutada.</li>        
          <li>Para m&aacute;s informaci&oacute;n sobre el formato de archivo BTI puedes visitar el <a href="https://wiki.tockdom.com/wiki/BTI_(File_Format)">siguiente enlace</a>.</p>        
          <li>Para m&aacute;s informaci&oacute;n sobre la opci&oacute;n <code>encode</code> de wimgt, puedes visitar <a href="https://szs.wiimm.de/wimgt/cmd-encode.html">este enlace</a>.</li>
        </ul>
      </div>
      <h2 id="bti-to-png">BTI a PNG</h2>
      <div class="contents">
        <p>Abre una ventana de comandos en el lugar en donde se encuentre el archivo BTI (<b>Fig. 4</b>).</p>
        <img src="../../images/basic2/bti-to-png1.jpg" alt="Image could not be loaded.">
        <p class="idtext">Fig. 4</p>
        <p>Escribe y ejecuta el siguiente comando (<b>Fig. 5</b>):</p>
        <div class="code_block">
          <p>wimgt decode [Archivo BTI] --dest [Archivo de salida] --no-mipmaps</p>
        </div>
        <p><b>Donde:</b></p>      
        <ul>
          <li><code>decode</code> le dice a wimgt que decodifique el archivo de entrada a leer (<code>dec</code> puede usarse en cambio).</li>        
          <li><code>[Archivo BTI]</code> es el archivo de entrada a ser convertido por wimgt.</li>        
          <li><code>--no-mipmaps</code> se usa para especificarle a wimgt que no extraiga los mipmaps de la imagen que estan contenidos en dicho archivo BTI, si es que existe alguno (es opcional, puede usarse <code>--no-mm</code> en cambio). Uno usualmente quiere la imagen original, no los mipmaps.</li>
          <li>Los dem&aacute;s componentes del comando tienen el mismo significado que en la parte anterior.</li>
        </ul>
        <img src="../../images/basic2/bti-to-png2.jpg" alt="Image could not be loaded.">
        <p class="idtext">Fig. 5</p>
        <p>Despu&eacute;s de ejecutar el comando, un archivo PNG se debi&oacute; haber creado en <code>[Archivo de salida]</code> (<b>Fig. 6</b>).</p>
        <img src="../../images/basic2/bti-to-png3.jpg" alt="Image could not be loaded.">
        <p class="idtext">Fig. 6</p>
        <p><b>Notas:</b></p>
        <ul>
          <li>De forma alternativa, <code>wimgt copy [BTI file] --dest [Output file] --no-mipmaps</code> puede usarse para convertir un archivo BTI en un archivo PNG.</li>
          <li>Archivos BTI extra&iacute;dos de <b>j3dview</b> no pueden ser procesados por wimgt directamente, hay que hacer una <a href="#j3dview-bti">peque&ntilde;a edici&oacute;n binaria al archivo para poder ser convertido</a>.</li>
          <li>Para m&aacute;s informaci&oacute;n sobre el comando <code>decode</code> de <b>wimgt</b> puede visitar el <a href="https://szs.wiimm.de/wimgt/cmd-decode.html">siguiente enlace</a>.</li>
          <li>Para m&aacute;s informaci&oacute;n sobre <code>wimgt</code> en general puedes visitar <a href="https://szs.wiimm.de/wimgt/">este enlace</a> (se pueden hacer bastantes cosas con &eacute;l).</li>
        </ul>
        <p>- <i>Gracias a <b>Lord-G</b> por la gu&iacute;a!</i></p>
      </div>
      <h2 id="j3dview-bti">BTIs de j3dview</h2>
      <div class="contents">
        <p>Existe un peque&ntilde;o problema con los archivos BTI que exporta j3dview que no pueden ser convertidos por wimgt. Para corregir esto hay que abrirlos en un editor hexadecimal (como <b>HxD</b> o <b>ImHex</b>) y sustituir los 8 digitos hexadecimales <code>00 00 00 20</code> al final de la primera l&iacute;nea del archivo (cada l&iacute;nea es de 16 bloques de 2 digitos hexadecimales) por <code>00 00 00 00</code>.</p>
        <img src="../../images/basic2/j3dview-bti1.jpg" alt="Image could not be loaded.">
        <p class="idtext">Fig. 7</p>
        <p>Despu&eacute;s de guardar los cambios, wimgt ser&aacute; capaz de convertir dicho archivo.</p>
      </div>
    </div>
	</body>
</html>
